This invention relates to an ATM cell multiplexing apparatus and method. More particularly, the invention relates to an ATM cell multiplexing apparatus, which is provided between a terminal and an ATM switch, for assembling data input from multiple terminal lines into ATM cells, time-division multiplexing the ATM cells and transmitting them to an ATM network, and to method of multiplexing ATM cells.
ATM (Asynchronous Transfer Mode) is expected to be a viable technique for realizing multimedia communications and ATM schemes intended for communication of high-speed data especially between computers are being developed. In addition, networks for interworking of existing communications protocols such as voice, HDLC and FR (frame relay) protocols in ATM are being sought in the market, as evidenced by recent ATM Forums. Constructing such a network entails constructing ATM switches as a backbone network. In addition, in order to raise the efficiency of terminal-line accommodation, an ATM cell multiplexer is placed as an intermediate apparatus between an ATM switch and a terminal.
(a) General Placement of ATM Cell Multiplexers
FIG. 14 is an explanatory view illustrating the general placement of ATM cell multiplexers. ATM cell multiplexers 21-2n on the transmitting side assemble data, which has been received from terminals 11-1m, into cells and send the cells to an ATM network 3 (composed of ATM switches 3a, 3b) via trunk lines 4. ATM cell multiplexers 61-6n on the receiving side disassemble the ATM cells, which have been received from the ATM network 3 via a trunk line 5, and send the resulting data to terminals 71-7m. The ATM cell multiplexers 21-2n, 61-6n are capable also of transmitting data in similar fashion in a direction opposite that set forth above.
Exacting traffic control (control of Quality of Service, or QOS) specific to ATM protocols is required with ATM cell multiplexers of the kind mentioned above. Conventional ATM cell multiplexers come equipped with ATM switches in order to carry out such traffic control. However, a drawback with such an arrangement is that ATM switches involve high manufacturing cost. Another shortcoming is complicated software and hardware control and an apparatus that is large in size. For these reasons, an ATM cell multiplexer that does not employ an ATM switch is in demand. However, with schemes that simply multiplex cells, it is necessary to delay cells to avoid collision when cells in a plurality of connections come into contention. Owing to such delay, a simple cell multiplexing scheme cannot be applied when multiplexing and transmitting media that has little tolerance for delay, such as low-speed CBR (Constant Bit Rate) media.
In view of the foregoing, an ATM cell multiplexing apparatus requires a method of multiplexing, efficiently and simply, cells transmitted from multiple CLAD (Cell Assembly and Disassembly) units which assemble data received from terminals into cells and disassemble cells received from trunk lines. To accomplish this, there has been proposed a distributed-CLAD ATM cell multiplexing apparatus by which cells, which are transmitted from multiple internal CLAD units, are statistically multiplexed and transmitted on an ATM bus efficiently and simply.
(b) Proposed ATM Cell Multiplexing Apparatus
FIG. 15 is a block diagram illustrating the proposed ATM cell multiplexing apparatus mentioned above. The apparatus includes an ATM bus scheduler 11, an ATM bus 12 for sending ATM cells, a plurality of CLADs (cell assembler/disassemblers) 130-135, a trunk line controller 14 and a backup line controller 15 for backing up the trunk line controller.
The cell assembler/disassemblers 130-135, which are connected to the ATM bus 12 in parallel, assemble data input from corresponding terminal lines 160-165 into ATM cells and send the cells to the ATM bus 12. Further, the cell assembler/disassemblers 130-135 accept ATM cells from a network via the ATM bus 12, disassemble the cells and send the resulting data to the corresponding terminal lines. A prescribed service category (CBR, rt-VBR, nrt-VBR, UBR) and an amount of traffic (peak cell rate, sustained cell rate) are provided for each terminal line in advance. The ATM cell multiplexing apparatus performs traffic management conforming to the service category and amount of traffic for every cell assembler/disassembler 130-135. CBR (Constant Bit Rate) is a constant-speed bit rate service, rt-VBR (real-time Variable Bit Rate) is a real-time variable bit rate service, nrt-VBR (not real-time Variable Bit Rate) is a variable bit rate service that is not real-time, and UBR (Unspecific Bit Rate) is a random bit rate service. The CBR service is set for the terminal line 160, the rt-VBR service for the terminal line 161, the UBR service for the terminal lines 162, 165, and the nrt-VBR service for the terminal lines 163, 164.
The ATM bus scheduler 11, which is for providing the cell assembler/disassemblers 130-135 an opportunity to transmit cells, controls the sending and receiving of cells performed via the ATM bus 12. For example, the ATM bus scheduler 11 provides the privilege to transmit to cell assembler/disassemblers allocated to respective ones of N-number of cyclically repeating time slots. A cell assembler/disassembler that has been given the privilege to transmit is thus allowed to send cells to the ATM bus. The trunk line controller 14 time-division multiplexes ATM cells sent to the ATM bus 12 from the cell assembler/disassemblers and transmits these cells to the network via a trunk line 171. In addition, the trunk line controller 14 sends the ATM bus 12 ATM cells from the network. By virtue of this arrangement, the ATM cell multiplexing apparatus implements cell multiplexing and traffic control without being equipped with an ATM switch.
Basically, the ATM bus scheduler 11 controls the ATM bus 12 in the following manner:
(1) In a situation where the plurality of existing cell assembler/disassemblers 130-135 transmit cells to the ATM bus 12, the ATM bus scheduler 11 performs control so as to avoid contention among transmitted cells on the ATM bus 12.
(2) The cell assembler/disassemblers 130-135 transmit cells to an ATM switch in accordance with the service categories (CBR, rt-VBR, nrt-VBR, UBR) stipulated by the ATM Forum. The ATM bus scheduler 11, therefore, grants the cell assembler/disassemblers the privilege to transmit based upon the service categories. A cell assembler/disassembler among the cell assembler/disassemblers 130-135 may transmit cells to the ATM bus 12 only if it has been granted the transmission privilege by the ATM bus scheduler 11.
(3) In a case where the cell assembler/disassemblers 130-135 transmit cells, the ATM bus scheduler 11 controls cell transmission in conformity with traffic in such a manner that the transmission rate will not exceed a pre-established peak cell rate (PCR) and sustained cell rate (SCR).
(c) Schedule Table
In order to realize (1) to (3) above, the ATM bus scheduler 11 has three schedule tables, namely a main schedule table MST, a first subschedule table SST1 for nrt-VBR and a second subschedule table SST2 for UBR, as shown in FIG. 16, and performs traffic management, in accordance with the service category and traffic, based upon these tables.
The main schedule table MST establishes the transmission privilege with regard to the cell assembler/disassemblers 130, 131, 133, 134 (FIG. 15) for the CBR service, rt-VBR service and nrt-VBR service and sets which cell assembler/disassembler is to be granted the transmission privilege in each of the N-number of cyclically repeating time slots TS1 to TSN. The setting of the transmission privilege is performed when a cell assembler/disassembler or trunk line is registered or changed. The transmission privilege is set taking into consideration the service category and traffic (peak cell rate PCR and sustained cell rate SCR) of the channel which the cell assembler/disassembler accommodates. For example, transmission privileges of a number conforming to the percentage of the sustained cell rate SCR are granted to the cell assembler/disassemblers and the transmission privileges are set in the time slots TS1-TSN of the main schedule table MST in the following order of priority: CBR servicexe2x86x92rt-VBR servicexe2x86x92nrt-VBR service. If the setting of transmission privilege allocated to each cell assembler/disassembler is finished, or if there are no longer any vacant time slots in the main schedule table MST, the setting of transmission privilege is completed.
The first subschedule table SST1, which is referred to following the main schedule table MST, establishes the transmission privilege for the cell assembler/disassemblers 133, 134, which accommodate the nrt-VBR channel, in accordance with the percentage of the peak cell rate PCR. When the transmission privilege is granted to a certain cell assembler/disassembler in a time slot for which reference is made to the main schedule table MST, the transmission privilege is granted to a cell assembler/disassembler which accommodates the nrt-VBR channel upon referring to the first subschedule table SST1 if there is no cell to be transmitted to the above-mentioned cell assembler/disassembler, or if the transmission rate is greater than the peak cell rate, or if the transmission privilege has not been granted to any cell assembler/disassembler in this time slot.
The second subschedule table SST2, which is referred to following the first subschedule table SST1 (i.e., last), establishes the transmission privilege in order for the cell assembler/disassemblers 132, 135 of the UBR service. In a case where a cell assembler/disassembler to transmit a cell is not determined even when the main schedule table MST and first subschedule table SST1 are searched, the transmission privilege is granted to a certain cell assembler/disassembler upon referring to the second subschedule table SST2.
(d) Example of Schedule Table Settings
FIGS. 17 and 18 are diagrams useful in describing a specific example of schedule table settings in a proposed ATM bus scheduler. FIG. 17 shows an example of a main schedule table and FIG. 18 an example of a subschedule table. Here CLADx represents a cell assembler/disassembler for accommodating low-speed CBR media, CLADy, CLADz are cell assembler/disassemblers for accommodating nrt-VBR media, and CLADw is a cell assembler/disassembler for accommodating UBR media. The respective parameters are as follows: Trunk line speed of ATM cell multiplexer: 1.536 Mbps
Since the speed of the trunk line is 1.536 Mbps, the transmission interval of one cell is 276 xcexcs (=53xc3x978/1.536xc3x97106 sec). This interval is adopted as one time slot (TS) on the ATM bus. Since the main schedule table MST is such that 1536 time slots constitute one cycle, one cycle is 53xc3x978/103 (sec) and the transmission rate of one time slot (53xc3x978 bits) is 1 kbps.
In the setting of the main schedule table MST, the set allocation of transmission privilege with respect to the cell assembler/disassemblers CLADx, CLADy, CLADz is decided in accordance with the sustained cell rate SCR. The sum total 1290 kbps of the SCRs (=10 kbps+768 kbps+512 kbps), therefore, is equally distributed at a percentage with respect to the overall speed (=1536 kbps) of the trunk line. Since the number of time slots of the main schedule table MST is 1536 (1 TS=1 kbps), the number allocated to each of the cell assembler/disassemblers is as follows: 10 for CLADx, 768 for CLADy, 512 for CLADz and 246 for vacant time slots.
As for the order of time-slot allocation to the main schedule table MST, allocation is performed preferentially in the aforesaid order CBRxe2x86x92rt-VBRxe2x86x92nrt-VBR. Accordingly, first ten time slots (see FIG. 17) are allocated to CLADx at equal intervals in such a manner that CLADx will appear every 153 or 154 time slots; then 768 time slots are allocated to CLADy at equal intervals in such a manner that CLADy will appear every 2 or 3 slots; and finally 512 time slots are allocated to CLADz at equal intervals in such a manner that CLADz will appear every 3 slots. Function codes are filled in all of the remaining time slots in such a manner that the ATM bus scheduler will make a transition to and search the subtables unconditionally.
In the setting of the first subschedule table SST1 for nrt-VBR, transmission privileges are distributed equally at the percentage of the PCRs of the cell assembler/disassemblers accommodating the nrt-VBR channel. Accordingly, if the number of time slots of the first subschedule table SST1 is seven, as shown at (1) in FIG. 18, four are allocated to CLADy and three to CLADz (1024:768=4:3).
The setting of the second subschedule table SST2 for UBR is carried out by allocating transmission privileges to the UBR-channel accommodating cell assembler/disassemblers in order. Accordingly, if the number of time slots is one, one CLADw is allocated, as indicated at (2) in FIG. 18.
Thus, as set forth above, the proposed ATM cell multiplexing apparatus performs traffic management based upon the service category and traffic of the channels accommodated by cell assembler/disassemblers. However, the proposed ATM cell multiplexing apparatus has the following two disadvantages:
(1) The units of management of control of the ATM bus scheduler 11 on the ATM bus on which statistical multiplexing is performed are the units of the cell assembler/disassemblers (i.e., in units of the CLADs). As a consequence, the channels of a plurality of service categories (e.g., VBR, UBR) cannot be mixed in a cell assembler/disassembler, and it is necessary that the channel-accommodating cell assembler/disassemblers be classified according to service category. As a result, the hardware and lines on the side of the terminal lines must be increased.
It is required that VBR media, for which average/maximum throughput is guaranteed regardless of traffic, and UBR media, which is capable of using a band if there is no other traffic, be accommodated separately on a per-CLAD basis and on a per-terminal-line basis. These cannot be accommodated by terminal lines for which prescribed service categories have already been established.
Accordingly, lines accommodated by an ATM cell multiplexer must be re-accommodated according to service category and it is required that terminals and lines be increased as necessary. In addition, depending upon the network conditions, there are cases where terminals and lines cannot be grouped by service category; even if the lines are accommodated by ATM cell multiplexer, accurate traffic control will not be possible.
(2) In the case of low-speed CBR media such as low-speed or constant-speed data or voice that is extremely intolerant to delay time, a problem which arises is transmission delay brought about by the fact that there is no synchronization between an opportunity for a cell assembler/disassembler to generate a cell and an opportunity for a scheduler to transmit. However, since it is impossible to predict a correction for the purpose of achieving synchronization, a transmission delay of less than one period of the cell generating interval, which is the maximum theoretical, occurs. Accordingly, a scheme of the kind shown in FIG. 19 has been proposed. Here many transmission opportunities (transmission privileges) in the ATM bus scheduler are permanently granted to low-speed CBR media such as low-speed data or voice that is intolerant to delay time, as a result of which it becomes possible to perform communication with little delay. FIG. 19 is an example in which, in comparison with the normal case, more transmission opportunities (three times as many) are permanently granted to the cell assembler/disassembler CLADx, which accommodates low-speed CBR, in parameters similar to those of FIG. 17, namely Trunk line speed of ATM cell multiplexer: 1.536 Mbps
Since the sustained transmission rate SCR of the cell assembler/disassembler CLADx is 10 kbps, the number of time slots necessary is ten at intervals of 153 times slots. Owing to the shortening of the transmission delay in FIG. 19, however, the transmission privilege is set for 30 time slots at intervals of 50 time slots.
If this arrangement is adopted, the result is as shown in FIGS. 20A and 20B. Specifically, in comparison with the scheme (FIG. 20A) that does not increase transmission opportunities, the proposed scheme (FIG. 20B) provides a three-fold increase in transmission opportunities and is capable of shortening the delay time of cell transmission (e.g., by one-third). With the proposed scheme, however, bands are wasted owing to the granting of more transmission privileges in permanent fashion. As a consequence, bands are used less efficiently, bands having two to three times the media throughput must be considered when designing the network and the effect of accommodating trunk lines is not good.
Further, the proposed scheme permanently grants two to three times the transmission opportunities with respect to the actual transmission band of a cell assembler/disassembler. However, the band of the ATM scheduler is equal to that of the trunk line. This means the existence of transmission opportunities (time slots) not actually used. The band of the trunk line, therefore, cannot be utilized at 100% efficiency.
Accordingly, an object of the present invention is to make it possible for a single cell assembler/disassembler to accommodate a plurality of channels (e.g., an nrt-VBR channel and a UBR channel) for which the service categories are different.
Another object of the present invention is to so arrange it that even if each cell assembler/disassembler accommodates a plurality of channels having different service categories, traffic management that takes service category and traffic into account can be performed on a per-channel basis and, moreover, traffic management that takes the service category and traffic of the cell assembler/disassemblers into account can be performed on a per-assembler/disassembler basis.
A further object of the present invention is to shorten the cell delay time of a low-speed CBR service without lowering band utilization efficiency.
(a) First Aspect of the Present Invention
In accordance with a first aspect of the present invention, a cell assembler performs traffic management, which is based upon service category and traffic, for every channel that is accommodated by the cell assembler, and an ATM bus scheduler performs traffic management for every cell assembler.
In this case, if the rate at which data on each channel flows in from a terminal line exceeds a peak rate that has been stipulated for this channel, the cell assembler discards this data.
Further, the cell assembler assigns priorities to service categories, assembles data into cells in order of priority on the basis of the service category of each channel, and sends the cells to an ATM bus whenever a transmission privilege is granted.
Further, an ATM cell scheduler, taking into consideration the service categories and traffic of all channels accommodated by a cell assembler, decides a schedule for granting a transmission privilege to this cell assembler, and performs traffic management for every cell assembler based upon this schedule.
Further, the ATM cell scheduler monitors the cell transmission rate of each cell assembler and, if the cell transmission rate of a cell assembler exceeds a total value of peak cell rates of each of the channels of this cell assembler, grants no transmission privilege to this cell assembler.
If the arrangement described above is adopted, multiple channels having different service categories can be accommodated by a single cell assembler through a simple structure, traffic management that takes service category and traffic into account can be performed on a per-channel basis, and traffic management that takes service category and traffic into account can be performed for every cell assembler.
Further, since a cell assembler/disassembler and a physical line can accommodate channels of a plurality of service categories, multiplexing efficiency is raised greatly and it is possible to scale-down hardware, lower cost and reduce the number of terminal accommodation lines.
(b) Second Aspect of the Invention
In accordance with a second aspect of the present invention, an ATM cell scheduler (1) creates a main schedule table, which applies a transmission privilege in each of N-number of time slots to a prescribed cell assembler, based upon service categories and traffic of all channels accommodated by a cell assembler; (2) creates a subschedule table, which is referred to after the main schedule table, for allocating more transmission privileges to cell assemblers that accommodate a low-speed CBR channel; and (3) and grants transmission privilege to cell assemblers upon referring to the main schedule table and subschedule table.
For example, on the basis of a cell rate obtained by totaling sustained cell rates of each of the channels accommodated by a cell assembler, the ATM cell scheduler creates a main schedule table in such a manner that a transmission privileges in each of the N-number of time slots are granted to each of the cell assemblers. Further, in order to allocate more transmission privileges to cell assemblers that accommodate a low-speed CBR channel, the ATM cell scheduler provides first subschedule table and allocates the transmission privileges solely to cell assemblers that accommodate the low-speed CBR channel, this allocation being made in the first subschedule table referred to after the main schedule table. The ATM cell scheduler grants transmission privileges to cell assemblers upon referring to these schedules.
In this case the ATM cell scheduler grants transmission privileges to cell assemblers upon referring to the subschedule tables if a cell to be transmitted to cell assembler to which the transmission privilege has been granted does not exist in a certain time slot, or if the cell transmission rate is greater than the peak cell rate in this cell assembler, or if the transmission privilege has not been granted to a cell assembler in this time slot.
If the arrangement described above is adopted, waiting time on an ATM multiplexing bus is shortened for media, namely low-speed CBR media such as low-speed data and voice, that involves strict delay-time requirements and for which transmission in real-time must be guaranteed. This makes possible communication with little delay and also makes it possible to support networks having multiple repeaters.
Further, whereas the prior art requires that CBR media be allocated a band that exceeds the necessary band, the present invention is such that merely setting the necessary band assures little delay and makes it possible to raise band utilization efficiency.